package jazztures.events {
	import flash.events.Event;

	public class HoldEvent extends Event {
		public static const HOLD_START:String = "hold_start";
		public static const HOLD_PROGRESS:String = "hold_progress";
		public static const HOLD_COMPLETE:String = "hold_complete";
		public static const HOLD_RELEASE:String = "hold_release";
		
		private var _id:uint;
		private var _x:Number;
		private var _y:Number;
		private var _timerProgress:Number;
		public function HoldEvent(type : String, id:uint, x:Number, y:Number, timerProgress:Number, bubbles : Boolean = false, cancelable : Boolean = false) {
			super(type, bubbles, cancelable);
			_id = id;
			_x = x;
			_y = y;
			this._timerProgress = timerProgress;
		}

		override public function clone() : Event {
			return new HoldEvent(type, _id, _x, _y, _timerProgress, bubbles, cancelable);
		}
		
		

		override public function toString() : String {
			return formatToString("HoldEvent", "type", "id", "x", "y", "timerProgress", "bubbles", "cancelable");
		}

		public function get id() : uint {
			return _id;
		}

		public function get x() : Number {
			return _x;
		}

		public function get y() : Number {
			return _y;
		}

		public function set y(y : Number) : void {
			_y = y;
		}

		public function get timerProgress() : Number {
			return _timerProgress;
		}
	}
}
